Modular System Development with Pullbacks
نویسندگان
چکیده
Two, seemingly different modular techniques for concurrent system development are investigated from a categorical perspective. A novel approach is presented in which they turn out to be merely special instances of pullback, a general categorical limit construction. Interestingly, the approach is based on truly concurrent semantics of systems. 1 Mathematical Preliminaries A transition system is a tuple S = (S, ŝ, A, T ) where S is a set of states, ŝ ∈ S is the initial state of S, A is a set of actions, and T ⊆ S × A × S is a transition relation. The transition relation captures the idea of dynamic evolution of systems whereby the execution of an action results in a change of the current state. In the sequel, various decorations of systems are inherited by their components, e.g., the initial state of S3 is ŝ3, etc., and the usual notational conventions apply. Thus, we write p a −→ q whenever 〈p, a, q〉 ∈ T , and call it an atomic step in S. Similarly, p / a −→ q if p a −→ q does not hold, and p a −→ if p a −→ q holds for some q ∈ S, respectively. The atomic step notation inductively extends to paths, i.e., finite sequences of subsequent steps. Thus, for the empty sequence ε ∈ A∗ we let p ε −→ q iff p = q. For a nonempty sequence a we let p a −→ q iff there exists a state r such that p a −→ r and r −→ q. Morphisms of transition systems were invented to explain how the dynamic behaviour of one system is simulated within another system. Definition 1. A morphism f : S1 → S2 of transition systems is a pair f = 〈σ, α〉 where σ : S1 → S2 is a total while α : A1 ⇀ A2 is a partial function which satisfy – σŝ1 = ŝ2. – p a −→ q in S1 and αa-defined implies σp αa −→ σq in S2. – p a −→ q in S1 and αa-undefined implies σp = σq in S2. Partially supported by CATALYSIS, a programme within CNRS/PAN cooperation framework, and by MIUR and CNR/PAN exchange programme. W.M.P. van der Aalst and E. Best (Eds.): ICATPN 2003, LNCS 2679, pp. 140–160, 2003. c © Springer-Verlag Berlin Heidelberg 2003 Modular System Development with Pullbacks 141 The first condition simply says that morphisms preserve the initial states. According to the second, a step in S1 caused by an action observable in S2 via α is mapped into an atomic step of S2. Finally, according to the third condition, steps caused in S1 by actions unobservable in S2 via α do not have effects observable in S2 via σ. Together, the conditions guarantee that each computation of S1, i.e., a path ŝ1 −→ p in S1, gets mapped to a computation in S2, namely to ŝ2 α −→ σp. One can also consider the image of S1 in S2 via f , i.e., a subsystem S = f(S1) of S2 defined as follows. – S = {σp ∈ S2 | p ∈ S1 }, with ŝ = ŝ2. – A = {αa ∈ A2 | a ∈ A1, αa-defined}. – σp αa −→ σq in S whenever p a −→ q in S1. It is convenient to introduce artificial empty steps p ø −→ p for each state p. Then one can think that steps caused in S1 by α-unobservable actions are mapped to the empty steps in S2. With this convention we can succinctly rewrite the second and third conditions of Def. 1 as follows. p a −→ q in S1 implies σp αa −→ σq in S2 (1) The notion of morphism introduced in Def. 1 seems to be the most commonly accepted in the literature. In fact, one often restricts attention to the subclass of morphisms which are total on actions. On the other hand, many models of concurrent systems, Petri nets in particular, offer a broader framework, in which sets, or even bags of actions contribute to system’s evolution in the form of a complex, non-atomic step. Thus, one could consider morphisms more general than those allowed by Def. 1. The simplest would be to allow α to map an action to a set, or a bag of actions so that atomic steps in the source system get mapped to complex steps in the target system. Formally, this generalization is correct in the sense that computations in the source get mapped to computations in the target. From this perspective an even more general notion of morphism can be considered in which actions are mapped to paths. Yet, only in the area of action refinement one can track these ideas. The lukewarm support can be attributed to conceptual problems that come along. One of them stems from the apparent difficulty to define the image construction. Consider, for instance, a morphism f : N1 → N2 of net systems. Nowadays it is uniformly accepted that this should induce a morphism CG(f) : CG(N1) → CG(N2), i.e., a simulation of the abstract behaviour of N1, the case graph of N1, within the abstract behaviour of N2. Now, what could it mean for f to map a single event a of N1 to a set {a′, a′′} of events of N2? Should we consider {a′, a′′} as a new atomic event in the image of N1 via f? If so, would there be this connection between such complex atom and a′, in case a′ = αb for another event b of S1? To convey the ideas we consider a class of simple concurrent systems. Elementary net systems offer a concrete and elegant model of concurrent computations. Ehrenfeucht and Rozenberg, see [7], considered a class of deterministic transition systems called elementary transition systems, and showed that they are exactly 142 M.A. Bednarczyk et al. the case graphs of elementary nets. More formally, they showed that for any elementary transition system S there exists an elementary net system N = SN(S) with case graph isomorphic to S, i.e., CG(N ) S. This result was among the first two constructive solutions to the problem of synthesis of a distributed realization SN(S) of a given abstract behaviour S. The other solution was provided earlier by Zielonka, see [13]. Later, see [10], this result was strengthened, and the correspondence was revealed to take the form of an adjunction between the category ETS of elementary transition systems, and a category ENS of elementary net systems. More precisely, Nielsen et al., showed that the process of synthesizing an elementary net is a functor, with SN : ETS → ENS being left adjoint and inverse to CG : ENS → ETS. Therefore, the adjunction is in fact a coreflection. Such a close correspondence between two categories has important consequences. For instance, universal categorical constructions are preserved by the functors: colimits by the left adjoint functor SN, and limits by the right adjoint functor CG. Due to CG(SN(S)) S one can also identify elementary transition systems as a subcategory of elementary net systems. Many constructions on nets are specified up to the properties of their case graphs, for instance by providing the specification of a system in temporal logic. It is tempting to perform all the work in the realm of transition systems. Then, if the construction was based on limits, one can call upon the coreflection, and translate the components back to the realm of Petri nets via synthesis. If the category of Petri nets is sufficiently complete, see [3], the same construction can then be performed on nets. Moreover, the case graph of the resulting net will be isomorphic to the construction performed in the category of transition systems. Consequently, in this note we shall be concerned with Petri nets rather indirectly, especially on the technical side. The main attention will be devoted to the existence of limits in the categories of Petri net systems abstract behaviours. Elementary transition systems satisfy the following conditions. No short loops p a −→ q implies p = q (2) No parallel arrows p a −→ q and p b −→ q implies a = b (3) State reachability (∃ )ŝ −→ p (4) Action reachability (∃p, q)p a −→ q (5) The essential notion necessary to define elementary transition systems and to facilitate the adjunction result is that of a region, see [7]. A region in S is a set R of states of S which is consistent with respect to action crossing the borders of R. Thus, R p a −→ q / ∈ R implies that for any other a-step r a −→ s one gets the same picture: r ∈ R s. The same holds for actions entering the region. The set of all regions of S is denoted RS. In what follows we write R◦a, resp., a◦R, to indicate that action a leaves, resp., enters, region R. Consequently, ◦a = {R ∈ RS |R◦a}, R◦ = {a ∈ A |R◦a}, etc. Modular System Development with Pullbacks 143 A transition system is elementary if it satisfies conditions (2)-(5) and, additionally, the following regional axioms. State Separation p = q implies (∃R ∈ RS)p ∈ R q (6) State-Action Separation p / −→ q implies (∃R ∈ RS)R◦a ∧ p / ∈ R (7) The first regional axiom states that two different states can be separated by a region. The second axiom states that if all regions exited by a contain p then p a −→ must hold in S. Transition system S is deterministic provided p a ←− q a −→ r implies p = r. Note that from the state separation axiom it follows that each elementary transition system is deterministic. In the sequel only deterministic transition systems are considered. 2 Introduction — A Primer on Modular Synthesis of Concurrent Systems Following Ehrenfeucht and Rozenberg an elementary net system SN(S) corresponding to a given elementary transition system S can be constructed as follows. Take the regions of S as places. Let the set of actions of S be the set of events of SN(S). The flow relation F is given by F (R, a) iff R◦a and F (a,R) iff a◦R. Finally, declare place R to be marked initially iff ŝ ∈ R. The above procedure is global and unstructured — the net is constructed in a single step. Modular approaches concentrate, instead, on gradual and systematic ways of system construction. Here, two such approaches pertaining to elementary net/transition systems are recalled. 2.1 Synthesis via Action Identification An alternative way to look at elementary net systems was put forward by Bernardinello, see [5]. Namely, one can characterise each elementary net as a product of simple components, so called state machines. This observation paves the way to a modular presentation of net synthesis. A state machine is a reachable marked Petri net of a very simple type: each event has exactly one pre-condition and one post-condition, while the initial marking consists of a single place with one token in it. Just like in the case of elementary nets no loops are allowed, and every two elements have different preor post-elements. Clearly, in a state machine every reachable marking is a singleton. Consequently, the behaviour of every state machine is purely sequential — no two events can ever be fired concurrently. The idea of the product of elementary net systems and the decomposition into such sequential components is best explained on a toy example. In the middle of Fig. 1 an elementary net system is presented. It admits decomposition into two state machine components presented on the left and on the right. The net in 144 M.A. Bednarczyk et al. the middle can be seen as a product of the two state machines. The product is computed by putting the nets side by side, separately, and then identifying events with identical names. To stay within the realm of elementary nets one should, in general, also clean things up. For instance, non-reachable places and/or events should be removed, while indistinguishable places glued together.
منابع مشابه
On the cuspidality of pullbacks of Siegel Eisenstein series to Sp2m×Sp2n
In this paper we study the pullback of a Siegel Eisenstein series on Sp2m+2n to Sp2m×Sp2n. There is a well-established literature on such pullbacks. In the case that m = n Garrett showed that the pullback is actually a cusp form in each variable separately. Here we generalize this result showing the pullback is cuspidal in the smaller variable in the case m 6= n. Such results have applications ...
متن کاملInvestigation the status of instructional design with modular method in medical education
Background and Goal: Modular method is a form of in-service training which provides job skills into a form of independent training of audiences. Each of modular provides specific skill and at the same time besides the other modular led to a new and comprehensive skill. In fact, any educational modular is a set of knowledge, attitudes and skills which by using them it can be possible to do ...
متن کاملSamar Jaafar and Kamal Khuri - Makdisi
We study pullbacks of modular forms of weight 1 from the modular curve X(4) to the modular curve X(4p), where p is an odd prime. We find the extent to which such modular forms separate points on X(4p). Our main result is that these modular forms give rise to a morphism F from the quotient of X(4p) by a certain involution ι to projective space, such that F is a projective embedding of X(4p)/ι aw...
متن کاملJaafar and Kamal Khuri - Makdisi
We study pullbacks of modular forms of weight 1 from the modular curve X(4) to the modular curve X(4p), where p is an odd prime. We find the extent to which such modular forms separate points on X(4p). Our main result is that these modular forms give rise to a morphism F from the quotient of X(4p) by a certain involution ι to projective space, such that F is a projective embedding of X(4p)/ι aw...
متن کاملAn Improved Modular Modeling for Analysis of Closed-Cycle Absorption Cooling Systems
A detailed modular modeling of an absorbent cooling system is presented in this paper. The model including the key components is described in terms of design parameters, inputs, control variables, and outputs. The model is used to simulate the operating conditions for estimating the behavior of individual components and system performance, and to conduct a sensitivity analysis based on the give...
متن کاملDevelopment of Quality of Classroom Life Questionnaire in L2 Contexts: Investigating the Impact of Modular Instruction
Quality of Classroom Life is considered as a serious issue in academia around the world, and it has recently received global inquiry in EFL and ESL contexts. However, no questionnaire has been developed to assess the Iranian students’ and teachers’ attitudes towards the quality of life in the classroom. After developing a conceptual framework, the final draft of the developed questionnaire with...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003